[tool.poetry]
name = "src"
version = "0.1.0"
description = ""
authors = ["Aleks-Ti <mti61ro@yandex.ru>"]
readme = "README.md"

[tool.poetry.dependencies]
python = "^3.11"
grpcio = "^1.62.0"
grpcio-tools = "^1.62.0"
asyncpg = "^0.29.0"
python-dotenv = "^1.0.1"
sqlalchemy = "^2.0.27"
alembic = "^1.13.1"
ruff = "^0.4.4"


[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"

[tool.ruff]
line-length = 135
dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$"
target-version = "py311"
select = [
    "E",  # pycodestyle
    "F",  # pyflakes
    "UP", # pyupgrade
    "Q",  # quotes
]
fixable = ["Q"]
flake8-quotes.inline-quotes = "double"
ignore = ["F401", "E712"]
exclude = [
    ".bzr",
    ".direnv",
    ".eggs",
    ".git",
    ".git-rewrite",
    ".hg",
    ".mypy_cache",
    ".nox",
    ".pants.d",
    ".pytype",
    ".ruff_cache",
    ".svn",
    ".tox",
    ".venv",
    "__pypackages__",
    "_build",
    "buck-out",
    "build",
    "dist",
    "node_modules",
    "venv",
    "seed_data",
    "migrations",
    "seed",
    "protobuf"
]

[tool.ruff.pydocstyle]
convention = "google"